package homeWork;

import java.util.Arrays;
import java.util.Scanner;

//public class homeWork14
//    public static void main(String[] args) {
//        int num = 12345;
//        int sum = sumDigits(num);
//        System.out.println("The sum of digits of " + num + " is " + sum);
//    }
//    //写一个递归方法，输入一个非负整数，返回组成它的数字之和
//    public static int sumDigits(int num) {
//        if (num == 0){
//            return 0;
//        }else{
//            return num % 10 + sumDigits(num / 10);
//        }
//    }
//}
//实现一个方法 transform, 以数组为参数, 循环将数组中的每个元素 乘以 2 ,
// 并设置到对应的数组元素上. 例如 原数组为 {1, 2, 3}, 修改之后为 {2, 4, 6}
//public class homeWork14 {
//    public static void main (String[] args){
//        int[] arr = {1, 2, 3};
//        int[] newArr = transform(arr);
//        System.out.println(Arrays.toString(newArr));
//    }
//    public static int[] transform(int[] arr){
//        for (int i = 0; i < arr.length; i++) {
//            arr[i] *= 2;
//        }
//        return arr;
//    }
//}
//示例 1：
//输入：nums = [2,7,11,15], target = 9
//输出：[0,1]
//解释：因为 nums[0] + nums[1] == 9 ，返回 [0, 1] 。
//public class homeWork14 {
//    public static void main(String[] args) {
//        int[] nums = {2, 7, 11, 15};
//        int target = 9;
//        for (int i = 0; i < nums.length; i++) {
//            while (nums[i] < target) {
//                nums[i] += nums[i + 1];
//                i++;
//            }
//            }
//        }
//    }
//给你一个整数数组 arr，请你判断数组中是否存在连续三个元素都是奇数的情况
// ：如果存在，请返回 true ；否则，返回 false 。
//public class homeWork14{
//    public static void main(String[] args){
//        int[] arr = {1,2,34,3,4,5,7,23,12};
//        for (int i = 0; i < arr.length - 2; i++) {
//            while (arr[i] % 2 != 0 && arr[i + 1] % 2 != 0 && arr[i + 2] % 2 != 0) {
//                System.out.println(arr[i] + " " + arr[i + 1] + " " + arr[i + 2]);
//                break;
//            }
//        }
//    }
//}
//给定一个非空整数数组，除了某个元素只出现一次以外，
// 其余每个元素均出现两次。找出那个只出现了一次的元素。
//public class homeWork14 {
//    public static void main(String[] args){
//       int[] arr = {4, 1, 2, 1, 2};
//       int result = singleNumber(arr);
//       System.out.println(result);
//    }
//    public static int singleNumber(int[] arr){
//        int result = 0;
//        for (int num : arr){
//            result ^= num;
//        }
//        return result;
//    }
//}
//给定一个整数数组 nums 和一个整数目标值 target，请你在该数组中找出 和为目标值 target 的那 两个 整数，并返回它们的数组下标。
//你可以假设每种输入只会对应一个答案。但是，数组中同一个元素在答案里不能重复出现。
//public class homeWork14{
//    public static void main(String[] args) {
//        int[] nums = {2, 7, 11, 15};
//        int target = 9;
//        int[] result = new int[2];
//        for (int i = 0; i < nums.length - 1; i++) {
//            for (int j = nums.length - 1; j > i; j--) {
//                if (nums[i] + nums[j] == target) {
//                    result[0] = i;
//                    result[1] = j;
//                }
//            }
//        }
//        System.out.println("Indices: [" + result[0] + ", " + result[1] + "]");
//    }
//}
//给定一个有序整型数组, 实现二分查找
//public class homeWork14 {
//    public static void main(String[] args){
//        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
//        binarySearch(arr, 7);
//        System.out.println("Index of 7: " + binarySearch(arr, 7));
//    }
//    public static int binarySearch(int[] arr, int target) {
//        int left = 0;
//        int right = arr.length - 1;
//        while (left <= right){
//            int mid = (left + right) / 2;
//            if (arr[mid] == target) {
//                return mid;
//            } else if (arr[mid] < target) {
//                left = mid + 1;
//            } else {
//                right = mid - 1;
//            }
//        }
//        return -1;
//    }
//}
//给定一个整型数组, 实现冒泡排序(升序排序)
//public class homeWork14 {
//    public static void main(String[] args){
//        int[] arr = {5, 2, 4, 6, 1, 3};
//        bubbleSort(arr);
//        System.out.println(Arrays.toString(arr));
//    }
//    public static void bubbleSort(int[] arr) {
//        int n = arr.length;
//        for (int i = 0; i < n - 1; i++) {
//            for (int j = 0; j < n - i - 1; j++) {
//                if (arr[j] > arr[j + 1]) {
//                    int temp = arr[j];
//                    arr[j] = arr[j + 1];
//                    arr[j + 1] = temp;
//                }
//            }
//        }
//    }
//}
//给定一个大小为 n 的数组，找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。
//你可以假设数组是非空的，并且给定的数组总是存在多数元素。
//public class homeWork14 {
//    public static void main(String[] args){
//        int[] arr = {2, 2, 1, 1, 1, 2, 2};
//        bubbleSort(arr);
//        int mid = arr[arr.length / 2];
//        System.out.println(mid);
//    }
//    public static void bubbleSort(int[] arr) {
//        int n = arr.length;
//        for (int i = 0; i < n - 1; i++) {
//            for (int j = 0; j < n - i - 1; j++) {
//                if (arr[j] > arr[j + 1]) {
//                    int temp = arr[j];
//                    arr[j] = arr[j + 1];
//                    arr[j + 1] = temp;
//                }
//            }
//        }
//    }
//}
//可以直接调用sort方法，排序之后，中间元素就是众数。
//调整数组顺序使得奇数位于偶数之前。调整之后，不关心大小顺序。
//public class homeWork14 {
//    public static void main(String[] args){
//        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9};
//        moveOddEven(arr);
//        System.out.println(Arrays.toString(arr));
//    }
//    public static void moveOddEven(int[] arr) {
//        int n = arr.length;
//        for (int i = 0; i < n; i++) {
//            for (int j = 0; j < n; j++) {
//                if (arr[i] % 2 != 0 && arr[j] % 2 == 0){
//                    int temp = arr[i];
//                    arr[i] = arr[j];
//                    arr[j] = temp;
//                }
//            }
//        }
//    }
//}
//import java.util.Scanner;
//
//public class homeWork14 {
//
//    public static void main(String[] args) {
//        Scanner scanner = new Scanner(System.in);
//        while (scanner.hasNextInt()) {
//            int x = scanner.nextInt();
//            int y = scanner.nextInt();
//            Data data = new Data(x, y);
//            System.out.println(data.getX() + data.getY());
//        }
//    }
//
//}
//
//class Data {
//
//    private int x;
//    private int y;
//
//    public Data(int x, int y) {
//        this.x = x;
//        this.y = y;
//    }
//
//    public int getX() {
//        return x;
//    }
//
//    public int getY() {
//        return y;
//    }
//
//小蓝和朋友们在玩一个报数游戏。由于今年是2024年，
// 他们决定要从小到大轮流报出是20或24倍数的正整数。请问第202420242024个被报出的数是多少？
//public class homeWork14 {
//    public static void main(String[] args){
//        for (int i = 0; ; i++) {
//            if (i % 20 ==0 && i % 24 == 0){
//                System.out.println(i);
//            }
//        }
//    }
//}
//小明决定从下周一开始努力刷题准备蓝桥杯竞赛。
// 他计划周一至周五每天做a道题目，周六和周日每天做b道题目。请你帮小明计算，按照计划他将在第几天实现做题数大于等于n
//public class homeWork14 {
//    public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//
//            System.out.print("请输入周一至周五每天的题目数量 (a)：");
//            int a = sc.nextInt();
//
//            System.out.print("请输入周六和周日每天的题目数量 (b)：");
//            int b = sc.nextInt();
//
//            System.out.print("请输入目标题目数 (n)：");
//            int n = sc.nextInt();
//
//            int totalQuestions = 0; // 完成的题目总数
//            int day = 0; // 记录天数
//
//            while (totalQuestions < n) {
//                // 周一到周五
//                for (int i = 0; i < 5 && totalQuestions < n; i++) {
//                    totalQuestions += a;
//                    day++;
//                }
//                // 周六和周日
//                for (int i = 0; i < 2 && totalQuestions < n; i++) {
//                    totalQuestions += b;
//                    day++;
//                }
//            }
//
//            System.out.println("小明将在第 " + day + " 天完成至少 " + n + " 道题目。");
//        }
//    }
import java.util.Scanner;
//有父类Base，内部定义了x、y属性。有子类Sub，继承自父类Base。子类新增了一个z属性，并且定义了calculate方法，
//在此方法内计算了父类和子类中x、y、z属性三者的乘积。请补全子类构造方法的初始化逻辑，使得该计算逻辑能够正确执行。
public class homeWork14 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextInt()) {
            int x = scanner.nextInt();
            int y = scanner.nextInt();
            int z = scanner.nextInt();
            Sub sub = new Sub(x, y, z);
            System.out.println(sub.calculate());
        }
    }
}

class Base {

    private int x;
    private int y;

    public Base(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public int getX() {
        return x;
    }

    public int getY() {
        return y;
    }

}

class Sub extends Base {

    private int z;

    public Sub(int x, int y, int z) {
        super(x, y);
        this.z = z;
        //write your code here
    }

    public int getZ() {
        return z;
    }

    public int calculate() {
        return super.getX() * super.getY() * this.getZ();
    }

}